import java.util.concurrent.TimeUnit;

public interface ConnectionPool<T> {
    T get() throws InterruptedException;//блокирующий
    T tryGet();//неблокирующий
    T tryGet(long time, TimeUnit unit) throws InterruptedException;//блокирующий до таймаута
    void release(T object);
}
